package com.kichina.parking.service.logic.bean;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 入场出场记录表
 * </p>
 *
 * @author Surging
 * @since 2022-09-20
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class ParkingRecord extends Model<ParkingRecord> {

    private static final long serialVersionUID = 1L;

    /**
     * 车辆停车记录主键ID
     */
    @TableId(value = "parking_record_id", type = IdType.UUID)
    private String parkingRecordId;

    /**
     * 车场ID	
     */
    private String parkid;

    /**
     * 	订单记录号
     */
    private String orderId;

    /**
     * 车牌号
     */
    private String carNumber;

    /**
     * 入场时间（字符串形式）
     */
    private String inTime;

    /**
     * 入场时间日期形式
     */
    private Date inTimeStamp;

    /**
     * 出场时间（字符串形式）
     */
    private String outTime;

    /**
     * 出场时间日期形式
     */
    private Date outTimeStamp;

    /**
     * 车辆类型	（0小车，1大车）
     */
    private Integer carType;

    /**
     * 车牌类型;0临时车，1月租车，2充租车，3贵宾车，4免费车，8收费月租车
     */
    private Integer cardType;

    /**
     * 入场通道ID
     */
    private String gateinid;

    /**
     * 入场通道名称
     */
    private String gateinname;

    /**
     * 出场通道ID
     */
    private String gateoutid;

    /**
     * 出场通道名称
     */
    private String gateoutname;

    /**
     * 入场操作员
     */
    private String operatorin;

    /**
     * 出场操作员
     */
    private String operatorout;

    /**
     * 应收金额
     */
    private String paycharge;

    /**
     * 应收金额num类型
     */
    private BigDecimal paychargeNum;

    /**
     * 实收金额
     */
    private String realcharge;

    /**
     * 实收金额num类型
     */
    private BigDecimal realchargeNum;

    /**
     * 减免金额
     */
    private String breaksAmount;

    /**
     * 减免金额num类型
     */
    private BigDecimal breaksAmountNum;

    /**
     * 优惠金额
     */
    private String discountAmount;

    /**
     * 优惠金额num类型
     */
    private BigDecimal discountAmountNum;

    /**
     * 优惠券
     */
    private String discountNo;

    /**
     * 优惠原因	
     */
    private String discountReason;

    /**
     * 支付方式；现金，扫码枪，预支付，出口直付，无感支付
     */
    private String payType;

    /**
     * 是否已支付;0已支付，1未支付	
     */
    private Integer payed;

    /**
     * 备注
     */
    private String remark;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 更新时间
     */
    private Date updateTime;

    /**
     * 最后登录时间
     */
    private String lastLoginTime;

    /**
     * 最后登录时间date类型
     */
    private Date lastLoginTimeDate;

    /**
     * 消息类型
     */
    private String service;


    @Override
    protected Serializable pkVal() {
        return this.parkingRecordId;
    }

}
